﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000E31 RID: 3633
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class ReturnLastTownScRsp : IMessage<ReturnLastTownScRsp>, IMessage, IEquatable<ReturnLastTownScRsp>, IDeepCloneable<ReturnLastTownScRsp>, IBufferMessage
	{
		// Token: 0x17002E21 RID: 11809
		// (get) Token: 0x0600A30A RID: 41738 RVA: 0x001B6015 File Offset: 0x001B4215
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<ReturnLastTownScRsp> Parser
		{
			get
			{
				return ReturnLastTownScRsp._parser;
			}
		}

		// Token: 0x17002E22 RID: 11810
		// (get) Token: 0x0600A30B RID: 41739 RVA: 0x001B601C File Offset: 0x001B421C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return ReturnLastTownScRspReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002E23 RID: 11811
		// (get) Token: 0x0600A30C RID: 41740 RVA: 0x001B602E File Offset: 0x001B422E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return ReturnLastTownScRsp.Descriptor;
			}
		}

		// Token: 0x0600A30D RID: 41741 RVA: 0x001B6035 File Offset: 0x001B4235
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ReturnLastTownScRsp()
		{
		}

		// Token: 0x0600A30E RID: 41742 RVA: 0x001B6040 File Offset: 0x001B4240
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ReturnLastTownScRsp(ReturnLastTownScRsp other) : this()
		{
			this.scene_ = ((other.scene_ != null) ? other.scene_.Clone() : null);
			this.retcode_ = other.retcode_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600A30F RID: 41743 RVA: 0x001B608C File Offset: 0x001B428C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ReturnLastTownScRsp Clone()
		{
			return new ReturnLastTownScRsp(this);
		}

		// Token: 0x17002E24 RID: 11812
		// (get) Token: 0x0600A310 RID: 41744 RVA: 0x001B6094 File Offset: 0x001B4294
		// (set) Token: 0x0600A311 RID: 41745 RVA: 0x001B609C File Offset: 0x001B429C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneInfo Scene
		{
			get
			{
				return this.scene_;
			}
			set
			{
				this.scene_ = value;
			}
		}

		// Token: 0x17002E25 RID: 11813
		// (get) Token: 0x0600A312 RID: 41746 RVA: 0x001B60A5 File Offset: 0x001B42A5
		// (set) Token: 0x0600A313 RID: 41747 RVA: 0x001B60AD File Offset: 0x001B42AD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Retcode
		{
			get
			{
				return this.retcode_;
			}
			set
			{
				this.retcode_ = value;
			}
		}

		// Token: 0x0600A314 RID: 41748 RVA: 0x001B60B6 File Offset: 0x001B42B6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as ReturnLastTownScRsp);
		}

		// Token: 0x0600A315 RID: 41749 RVA: 0x001B60C4 File Offset: 0x001B42C4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(ReturnLastTownScRsp other)
		{
			return other != null && (other == this || (object.Equals(this.Scene, other.Scene) && this.Retcode == other.Retcode && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600A316 RID: 41750 RVA: 0x001B6114 File Offset: 0x001B4314
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.scene_ != null)
			{
				num ^= this.Scene.GetHashCode();
			}
			if (this.Retcode != 0U)
			{
				num ^= this.Retcode.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600A317 RID: 41751 RVA: 0x001B6169 File Offset: 0x001B4369
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600A318 RID: 41752 RVA: 0x001B6171 File Offset: 0x001B4371
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600A319 RID: 41753 RVA: 0x001B617C File Offset: 0x001B437C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.scene_ != null)
			{
				output.WriteRawTag(90);
				output.WriteMessage(this.Scene);
			}
			if (this.Retcode != 0U)
			{
				output.WriteRawTag(120);
				output.WriteUInt32(this.Retcode);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600A31A RID: 41754 RVA: 0x001B61D8 File Offset: 0x001B43D8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.scene_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Scene);
			}
			if (this.Retcode != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Retcode);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600A31B RID: 41755 RVA: 0x001B6230 File Offset: 0x001B4430
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(ReturnLastTownScRsp other)
		{
			if (other == null)
			{
				return;
			}
			if (other.scene_ != null)
			{
				if (this.scene_ == null)
				{
					this.Scene = new SceneInfo();
				}
				this.Scene.MergeFrom(other.Scene);
			}
			if (other.Retcode != 0U)
			{
				this.Retcode = other.Retcode;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600A31C RID: 41756 RVA: 0x001B6298 File Offset: 0x001B4498
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600A31D RID: 41757 RVA: 0x001B62A4 File Offset: 0x001B44A4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 90U)
				{
					if (num != 120U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						this.Retcode = input.ReadUInt32();
					}
				}
				else
				{
					if (this.scene_ == null)
					{
						this.Scene = new SceneInfo();
					}
					input.ReadMessage(this.Scene);
				}
			}
		}

		// Token: 0x0400426C RID: 17004
		private static readonly MessageParser<ReturnLastTownScRsp> _parser = new MessageParser<ReturnLastTownScRsp>(() => new ReturnLastTownScRsp());

		// Token: 0x0400426D RID: 17005
		private UnknownFieldSet _unknownFields;

		// Token: 0x0400426E RID: 17006
		public const int SceneFieldNumber = 11;

		// Token: 0x0400426F RID: 17007
		private SceneInfo scene_;

		// Token: 0x04004270 RID: 17008
		public const int RetcodeFieldNumber = 15;

		// Token: 0x04004271 RID: 17009
		private uint retcode_;
	}
}
